package com.sdry.service.hpf;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpSession;

import com.sdry.model.hpf.CacheArea;

/**
 * @ClassName: CacheAreaService 
 * @Description:缓存区Service
 * @Author hpf
 * @Date 2018年11月13日 下午4:59:27 
 * @version 1.0
 */
public interface CacheAreaService {

	/**
	 * 缓存区总数
	 * @param cacheArea
	 * @return
	 */
	Integer countCacheArea(CacheArea cacheArea);
	
	/**
	 * 分页查询缓存区
	 * @param map
	 * @return
	 */
	List<CacheArea> listPageCacheArea(Map<String, Object> map);
	
	/**
	 * 查询所有缓存区
	 * @return
	 */
	List<CacheArea> listAllCacheArea();
	
	/**
	 * 叫料批量新增缓存区
	 * @param paID 配件ID
	 * @param batch 批次号
	 * @param quantity 数量
	 * @param session
	 * @return
	 */
	Integer insertCacheArea(Long[] paID,String[] batch,String[] quantity,HttpSession session);
	
	/**
	 * 新增缓存区
	 * @param paID 配件ID
	 * @param batch 批次号
	 * @param quantity 数量
	 * @return
	 */
	Integer insert(Long paID,String batch,String quantity);
	
	/**
	 * 跟新缓存区
	 * @param cacheArea 缓存区实体
	 * @return
	 */
	Integer updateCacheArea(CacheArea cacheArea);
	
	/**
	 * 根据配件ID查询缓存区
	 * @param paID 配件ID
	 * @return
	 */
	CacheArea findCacheAreaByPaID(Long paID);
	
	/**
	 * 缓存区盘点
	 * @param cacheAreaList
	 * @return
	 */
	Integer cacheAreaCheck(List<CacheArea> cacheAreaList);
	
	/**
	 * 缓存区盘点清空
	 * @param cacheAreaList
	 * @return
	 */
	Integer cacheAreaEmpty(List<CacheArea> cacheAreaList);
	
	/**
	 * 设置预警值
	 * @param cacheArea 缓存区实体
	 * @return
	 */
	Integer setWarningValue(CacheArea cacheArea);
	
}
